Many environments are sensitive to the amount of time it takes for messages to travel between two networked machines. For example, in many industrial applications it is essential to know the maximum time it will take for a message to travel from one device to another. Most widespread communications protocols, such as TCP/IP, cannot provide the consistent, predictable behavior needed for environments that are sensitive to the time it takes for information to be communicated between devices. Consequently, these environments have used specialized communications hardware to achieve predictable message travel times.